package com.gitee.wsl.collections.delegate

import com.gitee.wsl.collections.deque.Deque


/**
 * Deque type that delegates to another implementation.
 *
 * @param <T>
 * Deque item type.
 *
 * @author Matt Coley
</T> */
open class DelegatingDeque<T>(protected open val delegate: Deque<T>) :  Deque<T> by delegate {

//
//    override fun addFirst(e: T) {
//        delegate.addFirst(e)
//    }
//
//
//    override fun addLast(e: T) {
//        delegate.addLast(e)
//    }
//
//
//    override fun offerFirst(e: T): Boolean {
//        return delegate.offerFirst(e)
//    }
//
//
//    override fun offerLast(e: T): Boolean {
//        return delegate.offerLast(e)
//    }
//
//
//    override fun removeFirst(): T? {
//        return delegate.removeFirst()
//    }
//
//
//    override fun removeLast(): T? {
//        return delegate.removeLast()
//    }
//
//
//    override fun pollFirst(): T? {
//        return delegate.pollFirst()
//    }
//
//
//    override fun pollLast(): T? {
//        return delegate.pollLast()
//    }
//
//    override fun getFirst(): T? = delegate.getFirst()
//    override fun getLast(): T? = delegate.getLast()
//
//    override fun peekFirst(): T? = delegate.peekFirst()
//
//    override fun peekLast(): T? = delegate.peekLast()
//
//    override fun removeFirstOccurrence(o: T): Boolean = delegate.removeFirstOccurrence(o)
//
//    override fun removeLastOccurrence(o: T): Boolean = delegate.removeLastOccurrence(o)
//
//    override fun push(e: T) {
//        delegate.push(e)
//    }
//
//    override fun pop(): T? {
//        return delegate.pop()
//    }
//
//    override fun descendingIterator(): MutableIterator<T> = delegate.descendingIterator()
//
//    override fun iterator() = delegate.iterator()


}
